1
Основы текстов: Символы и строки в Julia
AI015Lesson 5
00:00

В языке Julia текст обрабатывается с помощью двух различных архитектурных объектов: 32-битный символ примитив и неизменяемый, строка, закодированная в формате UTF-8. В отличие от других языков, где символ — это строка длиной один элемент, в Julia тип Char рассматривается как числовой тип первого класса, представляющий кодовую точку Юникода.

1. Иерархия типов и память

Конкретный Char — это 32-битный примитивный тип (подтип AbstractChar). Встроенная String (подтип AbstractString), поддерживает весь диапазон Юникода. В то время как Char имеет фиксированный размер, а String имеет переменную ширину; отдельные символы занимают от 1 до 4 байт, причём точка перехода для символов ASCII находится на $0x80(128)$.

2. Арифметика и сравнение

Поскольку Char представляет числовую кодовую точку, вы можете выполнять арифметические операции. Используйте Int('a') чтобы получить 97, и Char(97) чтобы получить 'a'. Поддерживаются лексикографические сравнения: 'X' < 'x' — истинно, потому что заглавные буквы предшествуют строчным в Юникоде.

ФункцияСимвол ('a')Строка ("a")
ТипCharString
РазмерФиксированный 32-битныйПеременный, кодировка UTF-8
ИзменяемостьН/Д (значение)Нет (неизменяемый)

Цепочки сравнений, такие как 'A' <= 'X' <= 'Y' возвращают истину или ложь на основе последовательности Юникода.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>